【PHP/演習問題】関数(function)[2]
問題
時間(0~23)に応じてあいさつ文を出力するプログラムを作成してください。
なお、下記条件を満たすものとします。
- あいさつ文は朝、昼、夜の3種類とする。
- あいさつ文と対応する時間は表の通り
- 各種あいさつ文を出力する関数を定義する
- あいさつ文は関数を使って出力する
- 時間は標準入力で入力(0~23)する
種類 | 時間 | 挨拶文 |
---|---|---|
朝 | 0~11 | Good morning!
It’s a nice weather. |
昼 | 12~17 | Good afternoon!
It’s a nice breeze. |
夜 | 18~23 | Good evening!
The moon is beautiful. |
$ php practice.php
HOUR > 9
Good morning!
It's a nice weather.
$ php practice.php
HOUR > 13
Good afternoon!
It's a nice breeze.
$ php practice.php
HOUR > 21
Good evening!
The moon is beautiful.
$ php practice.php
HOUR > 99
Please enter from 0 to 23.
$ php practice.php
HOUR > -1
Please enter from 0 to 23.
解答例
<?php
function morning() {
echo "Good morning!\n";
echo "It's a nice weather.\n";
}
function afternoon() {
echo "Good afternoon!\n";
echo "It's a nice breeze.\n";
}
function evening() {
echo "Good evening!\n";
echo "The moon is beautiful.\n";
}
echo 'HOUR > ';
$input = trim(fgets(STDIN));
if( 0 <= $input && $input <= 11 ) {
morning();
} else if( 12 <= $input && $input <= 17 ) {
afternoon();
} else if( 18 <= $input && $input <= 23 ) {
evening();
} else {
echo "Please enter from 0 to 23.\n";
}
?>